#pragma once
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>

typedef int DataType;

typedef struct SListNode
{
	DataType data;
	struct SListNode* next;
}SListNode;

void InitSListNode(SListNode* phead);

void PushBackNode(SListNode** pphead, DataType x);

void PrintNode(SListNode** pphead);

int PrintNodeLength(SListNode** pphead);

void PrintFind(SListNode** pphead, int i, int length);

void InsertListNode(SListNode** pphead, int i, int length, DataType x);

void DeleteListNode(SListNode** pphead, int i, int length);

void DestroyListNode(SListNode** pphead);